www.gusucode.com > VC 串口通讯_数据库存取例子-源码程序 > VC 串口通讯_数据库存取例子-源码程序/code/Modem3/ZhiLengDialog.cpp

    //Download by http://www.NewXing.com
// ZhiLengDialog.cpp : implementation file
//

#include "stdafx.h"
#include "Modem3.h"
#include "ZhiLengDialog.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CZhiLengDialog dialog


CZhiLengDialog::CZhiLengDialog(CWnd* pParent /*=NULL*/)
	: CDialog(CZhiLengDialog::IDD, pParent)
{
	//{{AFX_DATA_INIT(CZhiLengDialog)
	m_ktsc = 0.0f;
	m_dhgf = 0.0f;
	m_dhlqs = 0.0f;
	m_gfwd = 0.0f;
	m_gfwdu = 0.0f;
	m_pqwd = 0.0f;
	m_uqdwc = 0.0f;
	m_dqdwc = 0.0f;
	m_gaofa = 0.0f;
	m_kzpc = 0.0f;
	m_lqsd = 0.0f;
	m_lqsu = 0.0f;
	m_mqdwd = 0.0f;
	m_lqdwd = 0.0f;
	m_hqdwd = 0.0f;
	m_swd = 0.0f;
	//}}AFX_DATA_INIT
      CWnd *ppWnd=CWnd::FindWindow(NULL,"modem3");
      pWnd=((CModem3Dlg *)ppWnd);
}


void CZhiLengDialog::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CZhiLengDialog)
	DDX_Text(pDX, IDC_KTSC, m_ktsc);
	DDV_MinMaxFloat(pDX, m_ktsc, 5.f, 16.f);
	DDX_Text(pDX, IDC_DHGF, m_dhgf);
	DDV_MinMaxFloat(pDX, m_dhgf, 70.f, 130.f);
	DDX_Text(pDX, IDC_DHLQS, m_dhlqs);
	DDV_MinMaxFloat(pDX, m_dhlqs, 20.f, 26.f);
	DDX_Text(pDX, IDC_GFWD, m_gfwd);
	DDV_MinMaxFloat(pDX, m_gfwd, 5.f, 15.f);
	DDX_Text(pDX, IDC_GFWDU, m_gfwdu);
	DDV_MinMaxFloat(pDX, m_gfwdu, 145.f, 165.f);
	DDX_Text(pDX, IDC_PQWD, m_pqwd);
	DDV_MinMaxFloat(pDX, m_pqwd, 180.f, 250.f);
	DDX_Text(pDX, IDC_UQDWC, m_uqdwc);
	DDV_MinMaxFloat(pDX, m_uqdwc, 2.f, 4.f);
	DDX_Text(pDX, IDC_DQDWC, m_dqdwc);
	DDV_MinMaxFloat(pDX, m_dqdwc, 2.f, 4.f);
	DDX_Text(pDX, IDC_GAOFA, m_gaofa);
	DDV_MinMaxFloat(pDX, m_gaofa, 60.f, 110.f);
	DDX_Text(pDX, IDC_KZPC, m_kzpc);
	DDV_MinMaxFloat(pDX, m_kzpc, 1.f, 4.f);
	DDX_Text(pDX, IDC_LQSD, m_lqsd);
	DDV_MinMaxFloat(pDX, m_lqsd, 20.f, 28.f);
	DDX_Text(pDX, IDC_LQSU, m_lqsu);
	DDV_MinMaxFloat(pDX, m_lqsu, 32.f, 40.f);
	DDX_Text(pDX, IDC_MQDWD, m_mqdwd);
	DDV_MinMaxFloat(pDX, m_mqdwd, 27.f, 33.f);
	DDX_Text(pDX, IDC_LQDWD, m_lqdwd);
	DDV_MinMaxFloat(pDX, m_lqdwd, 25.f, 31.f);
	DDX_Text(pDX, IDC_HQDWD, m_hqdwd);
	DDV_MinMaxFloat(pDX, m_hqdwd, 30.f, 36.f);
	DDX_Text(pDX, IDC_SWD, m_swd);
	DDV_MinMaxFloat(pDX, m_swd, 23.f, 28.f);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CZhiLengDialog, CDialog)
	//{{AFX_MSG_MAP(CZhiLengDialog)
	ON_BN_CLICKED(IDC_YINGYONG, OnYingyong)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CZhiLengDialog message handlers

void CZhiLengDialog::OnOK() 
{
	// TODO: Add extra validation here
	
	 CDialog::OnOK();
}

BOOL CZhiLengDialog::OnInitDialog() 
{
      
     	CDialog::OnInitDialog();
	int i;
	// TODO: Add extra initialization here
	for(i=0;i<38;i++)
		yd[i]=pWnd->immediate_data[i];
     m_ktsc=float(yd[7])/10;
	 m_kzpc=float(yd[8])/2;
	 m_gaofa=yd[9];
	 m_lqsu=float(yd[10])/2;
	 m_lqsd=float(yd[11])/2;
	 m_dhgf=yd[17];
	 m_dhlqs=yd[18];
	 m_gfwdu=yd[19];
	 m_gfwd=yd[20];
	 m_pqwd=yd[21];
	 m_uqdwc=float(yd[15])/2;
	 m_dqdwc=float(yd[16])/2;
	 m_swd=float(yd[23])/2;
	 m_lqdwd=float(yd[24])/2;
	 m_mqdwd=float(yd[25])/2;
	 m_hqdwd=float(yd[26])/2;
	 this->UpdateData(FALSE);
     	
	return TRUE;  // return TRUE unless you set the focus to a control
	              // EXCEPTION: OCX Property Pages should return FALSE
}

void CZhiLengDialog::OnYingyong() 
{
	// TODO: Add your control notification handler code here
      int i;
	 this->UpdateData(TRUE);
	 pWnd->send_data[0]=0xf7;
	 pWnd->send_data[1]=0xf8;
	 pWnd->send_data[2]=0x21;
	 pWnd->send_data[3]=0x01;
	 pWnd->send_data[4]=yd[4];
	 pWnd->send_data[5]=0x33;
	 for(i=6;i<35;i++)
		 pWnd->send_data[i]=yd[i+1];
	 pWnd->send_data[6]=int(m_ktsc*2);
	 pWnd->send_data[7]=int(m_kzpc*2);
     pWnd->send_data[8]=int(m_gfwd);
	 pWnd->send_data[9]=int(m_lqsu*2);
     pWnd->send_data[10]=int(m_lqsd*2);
     pWnd->send_data[14]=int(m_uqdwc*2);
	 pWnd->send_data[15]=int(m_dqdwc*2);
	 pWnd->send_data[16]=int(m_dhgf);
	 pWnd->send_data[17]=int(m_dhlqs);
	 pWnd->send_data[18]=int(m_gfwdu);
	 pWnd->send_data[19]=int(m_gfwd);
	 pWnd->send_data[20]=int(m_pqwd);
     pWnd->send_data[22]=int(m_swd*2);
	 pWnd->send_data[23]=int(m_lqdwd*2);
	 pWnd->send_data[24]=int(m_mqdwd*2);
	 pWnd->send_data[25]=int(m_hqdwd*2);
	 pWnd->send_data[35]=0;
	 for(i=2;i<35;i++)
		 pWnd->send_data[35]=+pWnd->send_data[i];
	 pWnd->send_data[36]=0xfd;
	 pWnd->send_flag=1;	
}